# 自己的解法：注意能不用while就并不用，否则很容易出错

class Solution:
    def largestPerimeter(self, A: List[int]) -> int:
        A.sort()
        i = len(A) - 1
        ans = 0
        while i > 1:
            if A[i-2] + A[i-1] > A[i]:
                ans = A[i-2] + A[i-1] + A[i]
                break
            i -= 1
        return ans

# 官方的解法

class Solution(object):
    def largestPerimeter(self, A):
        A.sort()
        for i in range(len(A) - 3, -1, -1):
            if A[i] + A[i+1] > A[i+2]:
                return A[i] + A[i+1] + A[i+2]
        return 0

# 作者：LeetCode
# 链接：https://leetcode-cn.com/problems/largest-perimeter-triangle/solution/san-jiao-xing-de-zui-da-zhou-chang-by-leetcode/
# 来源：力扣（LeetCode）
# 著作权归作者所有。商业转载请联系作者获得授权，非商业转载请注明出处。